function FindGreatestSumOfSubArray(array)
{
    // write code here
    // var res = array[0] // 假定最大的是第0个元素
    // var curSum = 0 // 以i为结尾的子数组最大和 初始值设为0
    // for(let i of array){
    //   // 如果前面的所有的和大于0  那么以该元素为结尾的子数组的最大和就是 cursum+i
    //   if(curSum > 0){
    //     curSum = curSum + i
    //   }else{ // 如果以前一位元素为结尾的所有子数字的最大和小于0 那么以该元素为结尾的最大和就是 i
    //     curSum = i
    //   }
    //   res = res > curSum ? res : curSum // 更新前面所有子数组的最大和 比较以该元素为结尾的最大和 和 前面所有元素子数组的最大和 选取其中最大的 作为结果值
    // }
    // return res
    var curSum = 0
    var res = array[0]
    for(let i of array){
      if(curSum > 0){
        curSum += i
      }else{
        curSum = i
      }
      res = res > curSum ? res :curSum
    }
    return res
}
module.exports = {
    FindGreatestSumOfSubArray : FindGreatestSumOfSubArray
};